#wb模式： 只能写数据，如果文件不存在则创建文件，文件存在则清空文件并写入数据
#ab模式：只能写数据，如果文件不存在则创建文件，文件存在则追加数据
#r模式：open("file.txt",mode='r',encoding = 'utf-8') 指定编码格式则读取的数据自动编码为utf-8
#w模式：open("file.txt",mode='w',encoding = 'utf-8') 指定编码格式则写入时自动编码为utf-8
#b模式：open("file.txt",mode='a',encoding = 'utf-8') 指定编码格式则写入时自动追加内容编码为utf-8
file = open("file.txt",mode='wb')
#加上换行符则追加内容，否则直接覆盖
file.write("this is 中文\n".encode("utf-8"))
file.write("this is 英文\n".encode("utf-8"))

file.close()

file = open("file.txt",mode='rb')
text = file.read()
print(text.decode("utf-8"))

#with上下文 编写文件操作的代码时，可以使用with上下文管理器，自动关闭文件
with open("file.txt",mode='rb') as file:
    text = file.read()
    print(text.decode("utf-8"))


import os
def read_file(file_name,str_word):
    data_list = list()
    if os.path.exists(file_name):
        with open(file_name,mode='r',encoding = "utf-8") as file:
            while(True):
                item = file.readline()
                if str_word in item:
                    data_list.append(item)
                else:
                    print()
                if item == '':
                    return data_list
    else:
        return "None"
print(read_file("file.txt","中文"))